import request from '@/utils/request'

// 登录
// export function login(data) {
//   return request({
//     url: '/auth/login',
//     method: 'post',
//     data
//   })
// }

// 获取用户信息
export function getUserInfo() {
  return request({
    url: '/auth/userinfo',
    method: 'get'
  })
}

// 登出
export function logout() {
  return request({
    url: '/auth/logout',
    method: 'post'
  })
}


// 模拟API响应（开发时使用）
export function login(data) {
  return new Promise((resolve) => {
    setTimeout(() => {

      // if (data.username === 'admin' && data.password === '123456') {
      //   resolve({
      //     data: {
      //       code: 200,
      //       token: 'mock-admin-token-' + Date.now(),
      //       message: '登录成功'
      //     }
      //   })
      // } else if (data.username === 'user' && data.password === '123456') {
      //   resolve({
      //     data: {
      //       code: 200,
      //       token: 'mock-user-token-' + Date.now(),
      //       message: '登录成功'
      //     }
      //   })
      // } else {
      //   resolve({
      //     data: {
      //       code: 401,
      //       message: '用户名或密码错误'
      //     }
      //   })
      // }
    }, 1000)
  })
}

// 模拟API响应（开发时使用）
export function mockLogin(data) {
  return new Promise((resolve) => {
    setTimeout(() => {
      if (data.username === 'admin' && data.password === '123456') {
        resolve({
          data: {
            code: 200,
            token: 'mock-admin-token-' + Date.now(),
            message: '登录成功'
          }
        })
      } else if (data.username === 'user' && data.password === '123456') {
        resolve({
          data: {
            code: 200,
            token: 'mock-user-token-' + Date.now(),
            message: '登录成功'
          }
        })
      } else {
        resolve({
          data: {
            code: 401,
            message: '用户名或密码错误'
          }
        })
      }
    }, 1000)
  })
}

// 模拟获取用户信息
export function mockGetUserInfo(token) {
  return new Promise((resolve) => {
    setTimeout(() => {
      if (token.includes('admin')) {
        resolve({
          data: {
            code: 200,
            data: {
              userInfo: {
                id: 1,
                username: 'admin',
                nickname: '管理员',
                avatar: 'https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png',
                email: 'admin@example.com'
              },
              roles: ['admin'],
              permissions: ['*:*:*']
            }
          }
        })
      } else {
        resolve({
          data: {
            code: 200,
            data: {
              userInfo: {
                id: 2,
                username: 'user',
                nickname: '普通用户',
                avatar: 'https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png',
                email: 'user@example.com'
              },
              roles: ['user'],
              permissions: ['dashboard:view', 'profile:view']
            }
          }
        })
      }
    }, 500)
  })
}
